Lambda Calculi of Types